package com.abbas.CayTcore.view

import android.app.Dialog
import androidx.fragment.app.FragmentPagerAdapter
import androidx.fragment.app.FragmentStatePagerAdapter
import com.abbas.CayTcore.adapter.InfoAdapter
import com.abbas.CayTcore.adapter.NowProductAdapter
import com.abbas.CayTcore.base.BaseView
import com.abbas.CayTcore.entity.TCoreBase
import q.rorbin.verticaltablayout.adapter.TabAdapter

interface ViewContract {

    interface MainActivityView: BaseView{
        /**
         * 显示等待
         */
        fun showWaitingDialog(dialog: Dialog)

        fun dismissDialog(dialog: Dialog)

    }

    interface WindingActivityView : BaseView {

        fun getAllCoreDataSuccess(adapter: FragmentPagerAdapter)



    }

    interface WindingView : BaseView {

        fun showLoading();

        fun closeLoading()

        fun getAllCore()

        fun onCoreDataGet(vpAdapter: FragmentStatePagerAdapter,tabAdapter: TabAdapter)

    }


    interface AddCoreTypeView : BaseView {

        fun startAddCore()

        fun addSuccess(row: Long)

        fun addFailure(e: Throwable)

    }

    interface CoreDetailView : BaseView {

        fun onCoreUpdate()

        fun onCoreDeleted()

    }

    interface CounterResultView : BaseView {

        fun onCoreGet(core: TCoreBase)

    }

    interface UserHomeView: BaseView{


    }

    interface WindingHomeUplevelView: BaseView{

        fun onInfoGetten(adapter: InfoAdapter)

        fun onScheduleGetten(productAdapter: NowProductAdapter)
    }

    interface WindingAllDataUpView: BaseView{

        fun getAllCore()

        fun onCoreLWGet(data: List<String>)

        fun coreLwTypeFilter(adapter: TabAdapter, param: FragmentStatePagerAdapter)

    }
}